package org.mx.service.server.jmx;

import java.util.List;

import org.mx.service.server.CommServerConfigBean;

/**
 * TCP/UDP通信服务器MXBean接口定义
 * @author john.peng
 *
 */
public interface CommServerMXBean {
	/**
	 * 获取Web服务器运行开始时间
	 * @return 运行开始时间
	 */
	public String getStartedTime();

	/**
	 * 获取Web服务器持续运行时间
	 * @return 持续运行时间
	 */
	public String getElapseTime();

	/**
	 * 启动服务器
	 * @throws Exception 启动服务器发生的异常
	 */
	public void startServer() throws Exception;

	/**
	 * 关闭服务器
	 * @throws Exception 启动服务器发生的异常
	 */
	public void stopServer() throws Exception;

	/**
	 * 重启服务器
	 * @throws Exception 启动服务器发生的异常
	 */
	public void restartServer() throws Exception;
	/**
	 * 是否启用了TCP服务器
	 * @return 启用返回true，否则返回false
	 */
	public boolean isTcpEnabled();
	
	/**
	 * 获取配置的TCP服务器参数
	 * @return TCP服务器参数列表
	 */
	public List<CommServerConfigBean.ServerConfig> getTcpServers();
	
	/**
	 * 是否启用了UDP服务器
	 * @return 启用返回true，否则返回false
	 */
	public boolean isUdpEnabled();
	
	/**
	 * 获取配置的UDP服务器参数
	 * @return UDP服务器参数列表
	 */
	public List<CommServerConfigBean.ServerConfig> getUdpServers();
}
